// LedManagerAdapter_Arduino.h
//#include "LedManagerAdapter_Arduino.h" // Arduino 平台适配器（包含全局 ledMgr）
//
//void setup() {
//    Serial.begin(115200);
//      delay(10);
//  addLedWithInit(16);
//  addLedWithInit(17);
//  addLedWithInit(18);
//  addLedWithInit(19);
//
//  // 🌕 常亮灯
//  //ledMgr.setMode(16, LedMode::ON);
//
//  // 💡 闪烁灯（每 500ms 闪一次）
//  //ledMgr.setMode(17, LedMode::BLINK, 500);
//
//  // 🌊 流水灯（多个 FLOW 模式组成效果）
//  //ledMgr.setMode(16, LedMode::FLOW);
//  //ledMgr.setMode(17, LedMode::FLOW);
//  //ledMgr.setMode(18, LedMode::FLOW);
//  //ledMgr.setMode(19, LedMode::FLOW);
//  //ledMgr.setFlowDirection(false);  // 正向
//  //ledMgr.setFlowInterval(200);    // 切换间隔 200ms
//
//  // 🌟 硬件 PWM 呼吸灯（需支持 PWM，如 ESP32）
//  ledMgr.setMode(19, LedMode::BREATH_PWM, 5000);
//}
//
//void loop() {
//  ledMgr.update();  // 必须不断调用以驱动灯效更新
//
//}


// led_manager_adapter_espidf.h
#pragma once

#include "led_manager.h"
#include "driver/gpio.h"
#include "driver/ledc.h"
#include "esp_timer.h"
#include "soc/clk_tree_defs.h"

// 平台适配函数声明
void digitalWriteWrapper(uint8_t pin, bool level);
uint32_t millisWrapper(void);
void pwmSetupWrapper(uint8_t pin, uint8_t channel);
void pwmWriteWrapper(uint8_t pin, uint8_t duty);
void pwmDetachWrapper(uint8_t pin);

void addLedWithInit(uint8_t pin);
void startLedManagerTask(int delayMs);
